//
//  @ Project : Project1
//  @ File Name : IMobile.java
//  @ Date : 1/21/2013
//  @ Author : Graham Tapscott
//
//



/**
 * IMobile - an interface that describes a class that represents a mobile object in the game
 * @author gtapscott
 *
 */
public interface IMobile {

	/**
	 * getName - name variable getter
	 * @return name variable value
	 */
	public String getName();

	/**
	 * getIndex - index variable getter
	 * @return index variable value
	 */
	public Integer getIndex();

	/**
	 * getPartyIndex - partyIndex variable getter 
	 * @return partyIndex variable value
	 */
	public Integer getPartyIndex();
	
	/**
	 * getType - type variable getter
	 * @return type variable value
	 */
	public String getType();
	
	public String toString();
	
	/***
	 * deSerialize - deserializes an object
	 * @param item a string representing the object to deserialize.
	 */
	public void deSerialize(String[] mobile);
	
	/***
	 * serialize - serializes an object 
	 * @return a string representing the object
	 */
	public String serialize();	
}
